Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support multiple Repositories in Leaderboard #113

Merged
merged 16 commits into from
Oct 14, 2024

Conversation

GODrums
Copy link
Collaborator

@GODrums GODrums commented Oct 4, 2024

Motivation

Many Artemis developers work on multiple related repositories simultaneously. To be able to count all those contributions, we want to be able to view leaderboards for a pre-determined list of repositories as well as a combined leaderboard for all repos.

Description

This PR makes it possible to distinguish between repositories for the leaderboard:

  • New select-based filter to filter for a specific repository or display all
  • Leaderboard endpoint now has optional repository parameter, filtering on SQL-level
  • Replaced input propagation for URL params with component-based signals to avoid long propagation chains. Unfortunately, this leads to its Storybook story currently having broken controls.
  • New error state whenever the leaderboard has no entries
  • Spring-Env for production has been adjusted to fetch the following list of repositories: Artemis, Athena, Hephaestus, Pyris, Ares2, Aeolus, hades, Apollon, Apollon_standalone

Screenshots (if applicable)

Repository filter on desktop screen:
Screenshot 2024-10-05 003810
Repository filter on mobile:
Screenshot 2024-10-05 004027
Error state (no entries in a leaderboard):
Screenshot 2024-10-05 002258

Checklist

General

  • PR title is clear and descriptive
  • PR description explains the purpose and changes
  • Code follows project coding standards
  • Self-review of the code has been done
  • Changes have been tested locally
  • Screenshots have been attached (if applicable)
  • Documentation has been updated (if applicable)

Client (if applicable)

  • UI changes look good on all screen sizes and browsers
  • No console errors or warnings
  • User experience and accessibility have been tested
  • Added Storybook stories for new components
  • Components follow design system guidelines (if applicable)

Server (if applicable)

  • Code is performant and follows best practices
  • No security vulnerabilities introduced
  • Proper error handling has been implemented
  • Added tests for new functionality
  • Changes have been tested in different environments (if applicable)

@GODrums GODrums self-assigned this Oct 4, 2024
@github-actions github-actions bot added the size:L This PR changes 100-499 lines, ignoring generated files. label Oct 4, 2024
FelixTJDietrich
FelixTJDietrich previously approved these changes Oct 5, 2024
Copy link
Collaborator

@FelixTJDietrich FelixTJDietrich left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code looks good, I only have two remarks

@github-actions github-actions bot added size:XL This PR changes 500-999 lines, ignoring generated files. and removed size:L This PR changes 100-499 lines, ignoring generated files. labels Oct 12, 2024
Copy link
Collaborator

@FelixTJDietrich FelixTJDietrich left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good now, thanks for this PR!

@FelixTJDietrich FelixTJDietrich merged commit 135bcee into develop Oct 14, 2024
5 checks passed
@FelixTJDietrich FelixTJDietrich deleted the support-multiple-repos-leaderboard branch October 14, 2024 17:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
application-server client enhancement New feature or request size:XL This PR changes 500-999 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants